package com.company;

import java.sql.*;

/**
 * java操作数据库
 * (1) 调用Class.forName()方法加载驱动程序。在多数ide中会自动加载，无需调用
 * (2) 调用DriverManager对象的getConnection()方法，获得一个Connection对象。
 * (3) 创建一个Statement对象，准备一个SQL语句，这个SQL语句可以是Statement对象（立即执行的的语句）、PreparedStatement语句（预编译的语句）或CallableStatement对象（存储过程调用的语句）。
 * (4) 调用excuteQuery()等方法执行SQL语句，并将结果保存在ResultSet对象；或者调用executeUpdate()等方法执行SQL语句，不返回ResultSet对象的结果。
 * (5)对返回的ResultSet对象进行显示等相当的处理。
 * (6)释放资源。
 */
public class Main {

    private static final String DBURL = "jdbc:mysql://localhost:3306/bjwp?useUnicode=true&characterEncoding=utf-8&useSSL=false";
    private static final String NAME = "root";
    private static final String PASSWORD = "Zzxx1688..";

    public static void main(String[] args) throws Exception {

        // 实例化数据库类
        MySql mySql = new MySql("192.168.168.168:3306", "bjwp", "root", "Zzxx1688..");
        // 数据库连接
        Connection myConn = mySql.conn;

        // 使用MySql类MyQuery方法查询数据
        ResultSet rs = mySql.MyQuery("select adminname,last_time from zzx_admin");
        while (rs.next()) {//如果对象中有数据，就会循环打印出来
            System.out.println(rs.getString("adminname") + "," + rs.getInt("last_time"));
        }

        // 使用MySql类MyUpdate方法更新数据
        int re = mySql.MyUpdate("update zzx_admin set last_time=1509675323+1 where adminname='shandongtaiyi'");
        if (re > 0) {
            System.out.println("更新成功，受影响的记录数量：" + re);
        }
        if (re == 0) {
            System.out.println("没有更新");
        }
        if (re == -1) {
            System.out.println("更新失败！");
        }

        // 使用MySql类的数据库连接
        try {
            Statement stmt = myConn.createStatement();
            ResultSet res = stmt.executeQuery("select adminname,last_time from zzx_admin");
            while (res.next()) {//如果对象中有数据，就会循环打印出来
                System.out.println(res.getString("adminname") + "," + res.getInt("last_time"));
            }
            stmt.close();
            res.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }

    }
}
